Techniques for sharing of sensor information

ABSTRACT

Various aspects of the disclosure relate to a request-response mechanism for sharing sensor information. For example, sensor devices and/or the like in objects (e.g., in vehicles, machines, fixed structures, etc.) may share information acquired by one or more sensors. The disclosure relates, in some aspects, to techniques for determining that sensor information may be beneficial for one or more regions (e.g., spaces, or areas) that may be occluded to one or more types of sensing, and based at least in part on such determination(s), pro-actively sharing, or requesting sharing, of applicable sensor information, e.g., between objects comprising a user equipment (UE) and one or more sensors.

This application claims priority to and the benefit of provisional patent application No. 62/679,470 filed in the U.S. Patent and Trademark Office on Jun. 1, 2018, the entire content of which is incorporated herein by reference in its entirety and for all purposes.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This non-provisional patent application is related to pending U.S. patent application Ser. No. 15/695,954, which was filed on Sep. 5, 2017 and is incorporated herein by reference in its entirety and for all purposes.

INTRODUCTION

Various aspects described herein relate to wireless communication and, more particularly but not exclusively, to various techniques for sharing sensor information.

Self-driving cars or other driving assist mechanisms may use line-of-sight sensors such as Lidar, radar, cameras, etc., to detect objects in the vicinity of the vehicle. In practice, however, a vehicle's sensors might not be able to detect all of the objects in the vehicle's vicinity. For example, a sensor's line-of sight may be blocked (e.g., occluded by other vehicles or the surroundings) or sensing performance may be adversely affected by weather conditions and/or lighting conditions. In addition, the vehicle may have a limited sight distance.

In some situations, there may be other sensors in the vicinity of the vehicle (e.g., one or more sensors of other objects/vehicles). Accordingly, it may be useful for the vehicle to obtain sensed information or the like from these other sensors.

SUMMARY

The following presents a simplified summary of some aspects of the disclosure to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated features of the disclosure, and is intended neither to identify key or critical elements of all aspects of the disclosure nor to delineate the scope of any or all aspects of the disclosure. Its sole purpose is to present various concepts of some aspects of the disclosure in a simplified form as a prelude to the more detailed description that is presented later.

In accordance with certain aspects, a method may be provided for use in an apparatus of a first object that is capable of transmitting wireless signals. The method may comprise, for example, at the apparatus, determining that a second object comprising a second apparatus is within at least a threshold proximity from at least one sensor of the first object, wherein such sensor is coupled to the apparatus. The method may further include determining a set of detected objects using, at least in-part, the at least one sensor, determining a subset of the set of detected objects that are presently occluded or are expected to be occluded from sensor detection from the second object, and transmitting one or more messages to the second apparatus, the message(s) comprising information corresponding to at least one detected object of the subset of the set of detected objects, or perhaps an absence of detected objects should the subset comprise a null set.

In certain example implementations, a method may also comprise identifying at least one parameter corresponding to a relative position of the second object with respect to the at least one sensor, and determining the subset of the set of detected objects based at least in part on the at least one parameter. By way of some examples, such a parameter may correspond a distance measurement or the like between the first object and the second object, a doppler measurement or the like corresponding to motion of the first object, the second object or both, an angular direction measurement or the like from the first object to the second object, a measured direction of travel or the like of the second object, a measured speed of travel or the like of the second object, a measured orientation or the like of the second object, a measured size or the like of the second object, a detected type or the like of the second object, a detected type or the like of the second apparatus, and/or some parameter based, at least in part, on some combination thereof.

Similarly, in certain example implementations, a method may also comprise, for at least one detected object in the set of detected objects, identifying at least one parameter corresponding to a present or expected relative position of the at least one detected object with respect to the second object or the first object, and determining whether the at least one detected object is presently, or may become, likely occluded from sensor detection from the second object based, at least in part, on the at least one parameter.

In certain example implementations, in some methods a message may be transmitted proactively by the first apparatus, e.g., rather than in response to a request from the second apparatus. In certain instances, a message may be transmitted in a unicast mode of communication or the like, e.g., supported by at least the first apparatus and the second apparatus. In certain example implementations, a sensor may comprise, at least a portion of, a radar-based sensor, an infra-red (IR)-based sensor, a sonar-based sensor, a LIDAR-based sensor, an image-based sensor, possibly a wireless communication interface, and/or the like or some combination thereof. In certain example implementations, a first object, a second object or a detected object may comprise a vehicle or the like, e.g., which may move from time to time. In certain instances, a detected object may not comprise a vehicle or the like, e.g., perhaps a more stationary or substantially stationary object. In certain example implementations, a first apparatus, a second apparatus or both, may comprise a user equipment (UE).

In accordance with certain aspects, an apparatus may be provided which may be provisioned in or otherwise operatively arranged to support a first object. The apparatus may, for example, comprise a transmitter (possibly part of a transceiver or the like), at least one sensor or configured to couple to one or more sensors, a memory device, and one or more processing circuits, wherein the processing circuit is configured to perform or support one or more of the methods/techniques presented herein. For example the processing circuit(s) may be configured to determine that a second object comprising a second apparatus is within at least a threshold proximity from at least one sensor of the first object coupled, determine a set of detected objects using at least in-part the at least one sensor, determine a subset of the set of detected objects that are presently occluded or are expected to be occluded from sensor detection by the second object, and initiate transmission of one or more messages to the second apparatus via the transmitter, wherein the message(s) comprise information (e.g., sensor information or the like) corresponding to at least one detected object of the subset of the set of detected objects, or perhaps an absence of detected objects should the subset comprise a null set.

In accordance with another aspect, a method of communication for an apparatus of a first object may be provided with comprises receiving a message from a second apparatus of a second object, the message comprising sensor information corresponding to at least one detected object that the second apparatus has determined to be presently occluded or is expected to be occluded by the second object from sensor detection by at least one sensor of the first object coupled to the apparatus, and affecting at least one function provided by the apparatus based, at least in part, on the sensor information of the received message. In accordance with yet another aspect, an apparatus for a first object may be provided with may comprise one or more processing circuit(s) that may be coupled to a receiver, a sensor, and a memory device, wherein the processing circuit may be configured to perform or support all or part of such a method.

In accordance with another aspect, a method of communication for an apparatus of a first object may be provided with comprises determining that a second object comprising a second apparatus is presently occluding or is expected to occlude detection of one or more potential objects within a region by at least one sensor of the first object coupled to the apparatus, transmitting a request message to the second apparatus, the request message comprising information corresponding to the region, and receiving a response from the second apparatus, the response comprising sensor information for at least a portion of the region as determined, at least in part, by one or more sensors of the second object coupled to the second apparatus. In accordance with yet another aspect, an apparatus for a first object may be provided with may comprise one or more processing circuit(s) that may be coupled to a receiver, a sensor, and a memory device, wherein the processing circuit may be configured to perform or support all or part of such a method.

In accordance with another aspect, a method of communication for an apparatus of a first object may be provided, which comprises receiving a request message, from a second apparatus of a second object, the request message comprising information corresponding to a region that the second apparatus has determined is presently occluded or is expected to be occluded by the first object from sensor detection by at least one sensor of the second object coupled to the second apparatus, determining sensor information for at least a portion of the region from one or more sensors of the first object coupled to the apparatus, and transmitting a response to the second apparatus, the response being based, at least in part, on the determined sensor information. In accordance with yet another aspect, an apparatus for a first object may be provided with may comprise one or more processing circuit(s) that may be coupled to a receiver, at transmitter, a sensor, and a memory device, wherein the processing circuit may be configured to perform or support all or part of such a method.

These and other aspects of the disclosure will become more fully understood upon a review of the detailed description, which follows. Other aspects, features, and implementations of the disclosure will become apparent to those of ordinary skill in the art, upon reviewing the following description of specific implementations of the disclosure in conjunction with the accompanying figures. While features of the disclosure may be discussed relative to certain implementations and figures below, all implementations of the disclosure can include one or more of the advantageous features discussed herein. In other words, while one or more implementations may be discussed as having certain advantageous features, one or more of such features may also be used in accordance with the various implementations of the disclosure discussed herein. In similar fashion, while certain implementations may be discussed below as device, system, or method implementations it should be understood that such implementations can be implemented in various devices, systems, and methods.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are presented to aid in the description of aspects of the disclosure and are provided solely for illustration of the aspects and not limitations thereof.

FIG. 1 illustrates an example communication system within which aspects of the disclosure may be implemented.

FIG. 2 illustrates an example communication system employing object sensing within which aspects of the disclosure may be implemented.

FIG. 3 illustrates an example timeline for the communication system of FIG. 2.

FIG. 4 illustrates an example communication system that uses a request-response scheme for communicating sensor information in accordance with some aspects of the disclosure.

FIG. 5 is a flowchart illustrating an example of a process for requesting sensor information in accordance with some aspects of the disclosure.

FIG. 6 is a flowchart illustrating an example of a process for responding to a request for sensor information in accordance with some aspects of the disclosure.

FIG. 7 illustrates an example autonomously controlled apparatus (e.g., vehicle) in accordance with some aspects of the disclosure.

FIG. 8 illustrates an example semi-autonomously controlled apparatus (e.g., vehicle) in accordance with some aspects of the disclosure.

FIG. 9 is a block diagram illustrating an example hardware implementation for an apparatus (e.g., an electronic device) that can support communication in accordance with some aspects of the disclosure.

FIG. 10 is a flowchart illustrating an example of a process in accordance with some aspects of the disclosure.

FIG. 11 is a block diagram illustrating an example hardware implementation for an apparatus (e.g., an electronic device) that can support communication in accordance with some aspects of the disclosure.

FIG. 12 is a flowchart illustrating an example of a process in accordance with some aspects of the disclosure.

FIG. 13 is a flowchart illustrating an example of a process in accordance with some aspects of the disclosure.

FIG. 14 is a flowchart illustrating an example of a process to support a proactive mode of sharing sensor information, in accordance with some aspects of the disclosure.

FIG. 15 is a flowchart illustrating an example of a process to further support the sharing of sensor information, in accordance with some aspects of the disclosure.

FIG. 16 is a flowchart illustrating an example of a process to support a receiving mode of sharing sensor information, in accordance with some aspects of the disclosure.

FIG. 17 is a flowchart illustrating an example of a process to support a request-response mode of sharing sensor information from a requesting apparatus, in accordance with some aspects of the disclosure.

FIG. 18 is a flowchart illustrating an example of a process to support a request-response mode of sharing sensor information from a responding apparatus, in accordance with some aspects of the disclosure.

FIG. 19 is a block diagram illustrating an example arrangement of objects that may support or otherwise benefit from some of the sensor sharing techniques presented herein, in accordance with some aspects of the disclosure.

DETAILED DESCRIPTION

The disclosure relates in some aspects to a request and response scheme (hereafter, request-response scheme) for obtaining information from nearby sensors. In some aspects, the request-response scheme may employ vehicle-to-anything (V2X) communication or some other suitable communication (e.g., between moving or stationary sensing devices). Advantageously, V2X communication and other types of communication are typically not restricted to line-of-sight. Thus, a vehicle can receive sensor information from a sensor (e.g., in another vehicle) that is not in the line-of-sight of the vehicle. This can be particularly helpful for the case where two vehicles are approaching intersections. Accordingly, the disclosure relates in some aspects to using V2X communication or other suitable communication (e.g., stationary device to vehicle communication) that can be used to share sensor information.

The detailed description set forth below in connection with the appended drawings is intended as a description of various configurations and is not intended to represent the only configurations in which the concepts described herein may be practiced. The detailed description includes specific details for the purpose of providing a thorough understanding of various concepts. However, it will be apparent to those skilled in the art that these concepts may be practiced without these specific details. Moreover, alternate configurations may be devised without departing from the scope of the disclosure. Additionally, well-known elements will not be described in detail or will be omitted so as not to obscure the relevant details of the disclosure.

The various concepts presented throughout this disclosure may be implemented across a broad variety of telecommunication systems, network architectures, and communication standards. For example, the 3rd Generation Partnership Project (3GPP) is a standards body that defines several wireless communication standards for networks involving the evolved packet system (EPS), frequently referred to as long-term evolution (LTE) networks. Evolved versions of the LTE network, such as a fifth-generation (5G) network, may provide for many different types of services or applications, including but not limited to web browsing, video streaming, VoIP, mission critical applications, multi-hop networks, remote operations with real-time feedback (e.g., tele-surgery), etc. Thus, the teachings herein can be implemented according to various network technologies including, without limitation, 5G technology, fourth generation (4G) technology, third generation (3G) technology, and other network architectures. Thus, various aspects of the disclosure may be extended to networks based on 3rd Generation Partnership Project (3GPP) Long Term Evolution (LTE), LTE-Advanced (LTE-A) (in FDD, TDD, or both modes), Universal Mobile Telecommunications System (UMTS), Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Evolution-Data Optimized (EV-DO), Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, Ultra-Wideband (UWB), Bluetooth, and/or other suitable systems. Also, the techniques described herein may be used for a downlink, an uplink, a peer-to-peer link, or some other type of link.

The actual telecommunication standard, network architecture, and/or communication standard used will depend on the specific application and the overall design constraints imposed on the system. For purposes of illustration, the following may describe various aspects in the context of a 5G system, an LTE system, a V2X system, or a combination thereof. It should be appreciated, however, that the teachings herein may be used in other systems as well. Thus, references to functionality in the context of 5G terminology, LTE terminology, V2X terminology, or a combination thereof, should be understood to be equally applicable to other types of technology, networks, components, signaling, and so on.

Example Communication System

FIG. 1 illustrates an example of a wireless communication system 100 where a user equipment (UE), a vehicle, or some other type of device can communicate with other devices via wireless communication signaling. For example, a first UE 102 and a second UE 104 may communicate with a transmit receive point (TRP) 106 using wireless communication resources managed by the TRP 106 and/or other network devices (e.g., a core network 108, an internet service provider (ISP) 110, peer devices, and so on).

In some cases, devices of the system 100 may communicate with each other directly via a direct link 112 (e.g., a unicast link, a broadcast link, or a multicast link). A direct link may take the form of, for example, a vehicle-to-anything (V2X) link or a device-to-device (D2D) link. As shown in FIG. 1, a first vehicle 114 may communicate via V2X communication (or via a similar form of communication such as a vehicle-to-vehicle (V2V) communication or vehicle-to-network (V2N) communication) with a second vehicle 116, the UE 102, a sensor 118, the TRP 106, or some other device (e.g., component) of the system 100.

In accordance with the teachings herein, devices of the system 100 may include functionality for sharing sensor information. There may be several issues relating to the sharing of sensor information. For example, for a particular location or geographical area there may be several vehicles sensing the same information such as an obstacle or a pedestrian. If all of the vehicles transmitted the information, the communication could be relatively inefficient (e.g., redundant information could be transmitted by multiple vehicles). The transmission of large amounts of data (e.g., from high definition cameras) could also result in the required data rate being relatively high and it could be challenging to meet data transfer requirements for such data. In view of the above, the disclosure relates in some aspects to determining which vehicle should transmit information and the time(s) at which the vehicle should transmit the information. To this end, each of the first vehicle 114, the UE 102, the sensor 118, the TRP 106, or any other component of the system 100, may include a module for sharing sensor information 120.

The devices and links of the wireless communication system 100 may take different forms in different implementations. For example, and without limitation, UEs may be cellular devices, Internet of Things (IoT) devices, cellular IoT (CIoT) devices, LTE wireless cellular devices, machine-type communication (MTC) cellular devices, smart alarms, remote sensors, smart phones, mobile phones, smart meters, personal digital assistants (PDAs), personal computers, mesh nodes, and tablet computers.

In some aspects, a TRP may refer to a physical entity that incorporates radio head functionality for a particular physical cell. In some aspects, the TRP may include 5G new radio (NR) functionality with an air interface based on orthogonal frequency division multiplexing (OFDM). NR may support, for example and without limitation, enhanced mobile broadband (eMBB), mission-critical services, and wide-scale deployment of IoT devices. The functionality of a TRP may be similar in one or more aspects to (or incorporated into) the functionality of a CIoT base station (C-BS), a NodeB, an evolved NodeB (eNodeB), radio access network (RAN) access node, a radio network controller (RNC), a base station (BS), a radio base station (RBS), a base station controller (BSC), a base transceiver station (BTS), a transceiver function (TF), a radio transceiver, a radio router, a basic service set (BSS), an extended service set (ESS), a macro cell, a macro node, a Home eNB (HeNB), a femto cell, a femto node, a pico node, or some other suitable entity. In different scenarios (e.g., NR, LTE, etc.), a TRP may be referred to as a gNodeB (gNB), an eNB, a base station, or referenced using other terminology.

Various types of links may be supported in the wireless communication system 100. For example, D2D links may include, without limitation, machine-to-machine (M2M) links, MTC links, V2V links, and V2X links. Network-to-device links may include, without limitation, uplinks (or reverse links), downlinks (or forward links), V2N links, and V2X links. Broadcast links may include, without limitation, V2V links, V2X links, M2M links, and MTC links. In some aspects, V2V and V2N communication may be considered as examples of V2X communication.

Example Vehicle System

FIG. 2 illustrates a communication system 200 that uses a request-response scheme for sharing sensor information. The communication system 200 includes vehicles that can sense objects in their vicinity and share the sensed information. In the scenario of FIG. 2, a forward view of a first vehicle V1 is partially blocked by a second vehicle V2 and a third vehicle V3. In addition, a forward view of the second vehicle V2 is partially blocked by the third vehicle V3. The sensors of the third vehicle V3 can detect the objects 1, 2, 3, and 4. The sensors of the second vehicle V2 can detect the objects 4 and 5. The sensors of the first vehicle cannot detect any of the objects 1, 2, 3, 4 or 5. In such a scenario, is it desirable for V1 to request sensor information from V2 and V3.

Example Timeline

The disclosure relates in some aspects to a request-response scheme that enables vehicles to share sensor data. Advantageously, this may be accomplished while reducing redundant sharing of data (flooding). In various aspects, the request-response scheme may use certain triggers to invoke sharing, may specify various types of information to share, may specify the detected objects to be reported (e.g., objects within a specified distance, in a particular direction, etc.), and may specify the type of data to be shared (e.g., object indicators, raw data such as a camera feed, etc.).

FIG. 3 illustrates a timeline 300 for one example of a request-response scheme for sharing sensor information in the scenario of FIG. 1. At time T0, the first vehicle V1 (the requestor in this scenario) sends a message (e.g., via a common channel such as a V2V communication channel used by the first vehicle V1, the second vehicle V2, and the third vehicle V3) requesting the sensor feed from any nearby vehicles. The first vehicle V2 and the second vehicle V3 (and any other nearby vehicles or devices configured to communicate on the channel) can receive this request message. At time T1, the third vehicle V3 (a responder in this scenario) responds with sensor information indicating detected objects 1, 2, 3, and 4 (e.g., the third vehicle V3 sends a response via the common channel). The first vehicle V1 and the second vehicle V2 (and any other nearby vehicles or devices configured to communicate on the channel) can receive this response message. As discussed in more detail below, the third vehicle V3 may respond first in this scenario because the visibility of it sensors reaches farther than the visibility of the sensors of the second vehicle V2. At time T2, the first vehicle V1 sends a message acknowledging receipt of the response from the third vehicle V3 (e.g., the first vehicle V1 sends an ACK via the common channel). At time T3, the second vehicle V2 (a responder in this scenario) responds with sensor information indicating detected object 5 (e.g., the second vehicle V2 sends a response via the common channel). Advantageously, the second vehicle V2 monitors the response from the third vehicle V3 at time T1 as discussed above and does not duplicate the information that was already sent by the third vehicle V3. That is, the second vehicle V2 transmits only the object data that has not been previously detected and reported (e.g., within a particular window of time corresponding to the request). As discussed herein, information (e.g., for a particular object) is thereby transmitted only once to avoid flooding (e.g., to avoid multiple vehicles transmitting redundant information). At time T4, the first vehicle V1 sends a message acknowledging receipt of the response from the second vehicle V2 (e.g., the first vehicle V1 sends an ACK via the common channel).

Example Protocol

The disclosure relates in some aspects to a request-response protocol for sharing sensor information. In some aspects, a responder may be configured to only transmit its sensor data (e.g., object information or raw data) in response to a request for the sensor data.

The request may take different forms in different scenarios. A request may request various types of information. A request may include various types of information.

In some aspects, a request can indicate that a response should indicate all objects that were detected or only a subset of these objects. As an example of the latter case, a request might request that only objects in the requestor's blind spot be reported. In this case, the request may specify the region for which objects are to be reported (e.g., by including an indication of the blind spot). For example, the request may describe the region as at least one of: a set of coordinates, a direction (e.g., an angle), a span relative to the direction, a center point, a zone around the center point, a range, or any combination thereof. As another example of the latter case, a request might request that only objects within a certain distance from the requestor be reported. As yet another example of the latter case, a request might request that only objects that have not already been reported (i.e., the delta) be reported. Alternatively, any of the above behaviors could be a default behavior.

A request may include the vehicle's location. A responder could use this location information to determine, for example, whether the responder is close enough to the requestor to warrant a response (e.g., based on a system-defined threshold or a threshold provided by the requestor).

A request may request a specific sensor feed. For example, a request may ask for an indication of detected objects, raw Lidar data (e.g., a Lidar feed), raw camera data (e.g., a camera feed), raw radar data (e.g., a radar feed), or any combination thereof.

A request may indicate a period of time over which the sensor feed is required. The designated period of time may depend, for example, on the speed of the requesting vehicle and/or the speed of the responding vehicle.

A request can request a sensor feed for a certain direction. For example, the request may ask a requestor to sense at a certain angle from a current orientation and report that information.

A requestor vehicle may receive a Basic Safety Message (BSM). Thus, the requestor may be aware of the presence of different vehicles in the vicinity (along with the location, direction, and speed of each vehicle in some cases).

Consequently, a request may indicate a distance (e.g., Y meters) so that any vehicle within that distance from the requestor starts transmitting sensor data first (i.e., sooner than vehicles that are further away). Subsequently, the distance may be increased so the requestor can obtain visibility up to a certain distance (e.g., the vehicles that are further away from the requestor will report their information once the distance is increased). As another example, the request may specify the order in which the vehicles in the vicinity are to respond (e.g., the third vehicle V3 responds first, the second vehicle V2 responds second, and so on).

A responder may perform various operations based on a received request. For example, a response may be based on information included in the request and/or one or more characteristics (e.g., location, visibility, etc.) of the responders.

In one scenario, the first requestor is a vehicle that has visibility above X meters. That is, by default (e.g., according to a threshold X specified by the system or the requestor), the vehicles that can “see” the furthest report first. Such a requestor may transmit (e.g., broadcast) an indication of all objects it has detected (or a designated subset of these objects).

In some aspects, the visibility of a vehicle may depend on the sensors used by that vehicle. For example, Lidar may have a visibility of 150 meters, a camera may have an effective visibility of 100 meters, and so on. These examples are for purposes of illustration. Other visibility distances could apply in other scenarios.

If no vehicles have visibility above X meters, X may be reduced over time (e.g., by an amount designated by the system or the requestor) to allow some other vehicle to transmit. This step may occur within a latency period (e.g., a period of time designated by the system or the requestor for determining whether there has been an initial response). For example, Y seconds after the request is sent, each of the responder vehicles may reduce X by a delta Z if none of the vehicles have responded to the request. In an alternative implementation, the requestor may send another request with a smaller X if no responses have been received after a certain period of time (e.g., Y seconds).

Alternatively or in addition, different vehicles could pick a random delay-in-response (a back-off value) to determine when to transmit. The random delay could depend on the amount of data to be transmitted in the response or some other factor (e.g., proximity to the requestor, etc.). Thus, in this case, the first vehicle to respond may be the one with the shortest random delay value. A random back-off may be used, for example, to prevent different vehicles that meet the same reporting time criterion (e.g., visibility above X) from reporting at the same time.

After the first vehicle sends a response, other vehicles in the area may transmit (e.g., broadcast) their responses (e.g., at times based on their respective reporting time criteria, if applicable). As discussed above, to improve system efficiency, these vehicles might only send deltas above and beyond what any prior vehicles transmitted. For example, if the three vehicles detected the same object, only the first responder would report this object in this case.

After all of the responses have been sent, the vehicle that requested the sensor feed may send one or more acknowledgments (e.g., separate ACKs to each responder, a global ACK, collective ACKs, etc.). The requestor may send an acknowledgment at, for example, the physical (PHY) layer or the application layer. Advantageously, this can provide for higher reliability on top of PHY layer re-transmission.

If a responder does not receive an acknowledgment from the requestor, the responder can retransmit its response. In some case, the responder may respond with its full information (rather than the delta) if the requestor did not acknowledge any of the responses.

Example Communication System

FIG. 4 illustrates a communication system 400 that includes a first apparatus 402 and a second apparatus 404. The first apparatus 402 and the second apparatus 404 may correspond to, for example, the vehicles of FIG. 1, 2, or 3. For example, the first apparatus 402 may be in a first vehicle and the second apparatus 404 may be in a second vehicle. The first apparatus 402 and the second apparatus 404 may communicate via a communication link such as, for example, a V2X link, an enhanced V2X (eV2X) link, or some other suitable communication link (e.g., a V2V link, a V2N link, a D2D link, etc.).

The apparatuses of the communication system 400 may access other peer communication apparatuses, other communication apparatuses of an associated wide area network, or communication devices in other networks (not shown). To reduce the complexity of FIG. 4, only two apparatuses are shown. In practice, a wireless communication system may include more of these apparatuses. In some implementations, the first apparatus 402 may correspond to the first vehicle 114 of FIG. 1. In addition, the second apparatus 404 may correspond to the second vehicle 116, the sensor 118, the UE 102, or some other device of FIG. 1.

The first apparatus 402 includes at least one sensor 406 for sensing objects in the vicinity (e.g., within a particular range) of the first apparatus 402. For example, the at least one sensor 406 may incorporate Lidar, radar, camera, or some other suitable object sensor technology. The first apparatus 402 also includes an object detection processor 408 for processing information received from the at least one sensor 406 (or another sensing device) to make an object detection decision and take action upon determining that an object has been detected. In addition, the first apparatus 402 includes a transceiver 410 for communicating with other apparatuses (e.g., other vehicles or devices with sensors). In some implementations, the transceiver 410 provides V2X or V2V communication.

The second apparatus 404 includes at least one sensor 412, an object detection processor 414, and a transceiver 416 similar to the first apparatus 402. In the example, of FIG. 4, the first apparatus 402 transmits a request 418 for sensor information. For example, the object detection processor may determine that the view of the at least one sensor 406 is partially blocked and therefore request additional sensor data from its neighbors. In response, the second apparatus 404 sends a response 420 that includes the sensor information sensed by the at least one sensor 412 and/or processed object information (e.g., object information) generated by the object detection processor 414. As an example of the latter case, the object detection processor 414 may process raw data provided by the at least one sensor 412 to identify any objects in the field of view and/or the specific location of each object. Here, a location may be indicated by geographic coordinates, a direction, a distance, a direction and a distance, or some other location parameter(s). In addition, the object detection processor 414 may indicate the type of object detected (e.g., a car, a bicycle, a pedestrian, etc.).

The teachings herein may be implemented in an apparatus or a subcomponent of an apparatus. As one example, the first apparatus 402 and/or the second apparatus 404 of FIG. 4 could be a vehicle that provides some or all of the functionality described herein. In this case, the vehicle could identifying nearby objects and transmit an indication thereof and/or the vehicle could receive sensor information from another apparatus and take action accordingly. Alternatively, the first apparatus 402 could be a component of a first vehicle and/or the second apparatus 404 could be a component of a second vehicle.

As another example, a communication module of an apparatus could provide some or all of the functionality described herein. FIG. 4 illustrates an example where the first apparatus 402 may be optionally configured with a communication module 422 that includes at least some of the functionality of the object detection processor 408 and the transceiver 410, and where the second apparatus 404 may be optionally configured with a communication module 424 that includes at least some of the functionality of the object detection processor 414 and the transceiver 416.

As yet another example, a sensor module of an apparatus could provide some or all of the functionality described herein. FIG. 4 illustrates an example where the first apparatus 402 may be optionally configured with a sensor module 426 that includes at least some of the functionality of the object detection processor 408 and the at least one sensor 406, and where the second apparatus 404 may be optionally configured with a communication module 428 that includes at least some of the functionality of the object detection processor 414 and the at least one sensor 412.

The teachings herein may be implemented in a wide variety of apparatuses. For example, as mentioned above, a vehicle or a component of a vehicle may provide some or all of the functionality described herein. As used herein, a vehicle can include any type of propelled apparatus including, without limitation, an automobile, a truck, an off-road vehicle, a motorcycle, a boat, an aircraft (e.g., a drone, etc.) a robot, or a conveyance device (e.g., for an automated factory, warehouse, or other use). Other types of apparatuses that are capable of communication could also provide some or all of the functionality described herein. For example, a cell phone or other wireless communication device (e.g., including at least one sensor) could identify nearby objects and send an indication thereof to another device. As another example, a cell phone or other wireless communication device could receive sensor information from another device and take action accordingly. For example, the cell phone or other device could display an indication about nearby objects, generate some other form of alert (e.g., an audible alert), send a control signal to another device (e.g., a control system of a vehicle), or forward the sensor information to another device. Also at least some of the functionality described herein could be implemented through the use of an application (app) that can be downloaded to a device (e.g., a cell phone, a computer, or some other type of wireless communication device) to enable the device to provide the corresponding functionality.

Example Processes

FIG. 5 illustrates a process 500 for communication in accordance with some aspects of the disclosure. The process 500 may take place within a processing circuit (e.g., the processing circuit 910 of FIG. 9), which may be located in a vehicle, a component of a vehicle, a communication device, a sensor device, a peer-to-peer device, a UE, a customer premises equipment (CPE), a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other suitable apparatus of a requestor (e.g., a requestor vehicle). In some aspects, the process 500 may be performed by the first apparatus 402 of FIG. 4. For example, block 402 may be performed by the at least one sensor 406, blocks 404 and 406 may be performed by the object detection processor 408, and blocks 408 and 410 may be performed by the transceiver 410. Of course, in various aspects within the scope of the disclosure, the process 500 may be implemented by any suitable apparatus capable of supporting communication-related operations.

At block 502, an apparatus (e.g., a requestor vehicle) senses at least one object.

At block 504, the apparatus determines that there is a need to request information from another sensor or other sensors.

At block 506, the apparatus determines attributes for the request. For example, a request may request all sensor information or a subset of sensor information (e.g., only sensor information for a current blind spot). In addition, a location of the requestor may be included in the request (e.g., to enable a responder to determine where to sense). A request may request a specific sensor feed (e.g., to obtain sensor information from a particular type of sensor and/or from a particular location). A request may specify a period of time (e.g., for responding to the request). A request may indicate a direction for the sensing. A request may specify a distance (e.g., to control which responders respond to the request).

At block 508, the apparatus sends (e.g., transmits) the request.

At block 510, the apparatus receives at least one response to the request.

At block 512, the apparatus sends (e.g., transmits) an acknowledgment upon receiving the response(s).

In some aspects, a process may include any combination of two or more of the operations of FIG. 5.

FIG. 6 illustrates a process 600 for communication in accordance with some aspects of the disclosure. In some aspects, the process 600 may complementary to the process 500 of FIG. 5. For example, the process 600 may be performed in response to the process 500. The process 600 may take place within a processing circuit (e.g., the processing circuit 1110 of FIG. 11), which may be located in a vehicle, a component of a vehicle, a communication device, a sensor device, a peer-to-peer device, a UE, a CPE, a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other suitable apparatus of a responder (e.g., a responder vehicle). In some aspects, the process 600 may be performed by the second apparatus 404 of FIG. 4. For example, block 602 may be performed by the at least one sensor 412, blocks 606 and 608 may be performed by the object detection processor 414, and blocks 604, 610, and 612 may be performed by the transceiver 416. Of course, in various aspects within the scope of the disclosure, the process 600 may be implemented by any suitable apparatus capable of supporting communication-related operations.

At block 602, at some point in time, an apparatus (e.g., a responder vehicle) may sense at least one object.

At block 604, the apparatus receives a request for its sensed information. In response to this request, the apparatus may conduct another sense operation (e.g., as in block 602).

At block 606, the apparatus determines whether to respond to the request. For example, the apparatus may respond based on the distance of the apparatus from the requestor. As another example, the apparatus may respond immediately if the apparatus's sensor visibility is beyond a threshold distance (e.g., X meters). As yet another example, the apparatus may delay responding if the apparatus's sensor visibility is less than the threshold distance. Alternatively or in addition, the apparatus may use a random delay to determine when to respond.

At block 608, if the apparatus elects to respond at block 606, the apparatus determines the attributes of its response. For example, the apparatus may elect to send all of its sensor information or a subset of its sensor information (e.g., pursuant to the request or a delta). As another example, the apparatus may elect to send a specific sensor feed (e.g., pursuant to the request). As yet another example, the apparatus may elect to send sensor information for a specific period of time and/or for a particular direction (e.g., pursuant to the request). Also, if the apparatus does not detect any objects, the apparatus may report this in the response.

At block 610, the apparatus sends the response, if applicable.

At block 612, the apparatus receives an acknowledgment to the response, if applicable.

In some aspects, a process may include any combination of two or more of the operations of FIG. 6.

Example Autonomously Controlled Apparatus

The teachings herein may be implemented in an autonomously controlled apparatus. FIG. 7 illustrates an example of an autonomously controlled apparatus 700 (e.g., a self-driving vehicle). The apparatus 700 may correspond to, for example, the first apparatus 402 or the second apparatus 404 of FIG. 4.

The apparatus 700 includes a motion controller 702 that autonomously controls at least one actuator 704. The at least one actuator 704 may take the form of, for example, a motor and associated wheels, or some other mechanism that is capable of moving the apparatus 700.

In accordance with the teachings herein, the motion controller 702 may take nearby objects into account when deciding whether and/or how to move the apparatus 700. To this end, an object detection processor 706 identifies objects in the vicinity of the apparatus 700 and provides information about these objects to the motion controller 702. As discussed herein, the object detection processor 706 processes information received from one or more sensors to make an object detection decision and take action upon determining whether or not an object has been detected. For example, the object detection processor 706 may receive sensor information from at least one sensor 708 associated with the apparatus 700. Alternatively, or in addition, the object detection processor 706 may obtain sensor information received by a transceiver 710 from other apparatuses (e.g., other vehicles or devices with sensors) through the use of a request-response scheme as taught herein.

Example Semi-autonomously Controlled Apparatus

The teachings herein may be implemented in a semi-autonomously controlled apparatus. FIG. 8 illustrates an example of an autonomously controlled apparatus 800 (e.g., a vehicle with automated driver assistance). The apparatus 800 may correspond to, for example, the first apparatus 402 or the second apparatus 404 of FIG. 4.

The apparatus 800 includes a motion controller 802 that semi-autonomously controls at least one actuator 804. For example, similar to the apparatus 700 of FIG. 7, an object detection processor 806 identifies objects in the vicinity of the apparatus 800 and provides information about these objects to the motion controller 802. In addition, the motion controller 802 may receive signals from a driver control device 812 (e.g., a steering controller, an acceleration controller, a braking controller, a cell phone, etc.) that is actuated by a driver.

Similar to the apparatus 700 of FIG. 7, the object detection processor 806 processes information received from one or more sensors to make an object detection decision and take action upon determining whether or not an object has been detected. For example, the object detection processor 806 may receive sensor information from at least one sensor 808 associated with the apparatus 800. Alternatively, or in addition, the object detection processor 806 may obtain sensor information received by a transceiver 810 from other apparatuses (e.g., other vehicles or devices with sensors) through the use of a request-response scheme as taught herein. The object detection processor 806 could also provide information about nearby objects to a driver input/output (I/O) device 814 (e.g., a display screen, a speaker, a vibration device, a cell phone, etc.) to alert the driver about the nearby objects.

An Example Apparatus

FIG. 9 illustrates a block diagram of an example hardware implementation of an apparatus 900 configured to communicate according to one or more aspects of the disclosure. The apparatus 900 could embody or be implemented within a vehicle, a component of a vehicle, a communication module, a sensor module, a sensor device, a peer-to-peer device, a UE, a CPE, a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other type of device that supports wireless communication. In various implementations, the apparatus 900 could embody or be implemented within an access point, an access terminal, or some other type of device. In various implementations, the apparatus 900 could embody or be implemented within a server, a personal computer, a mobile phone, a smart phone, a tablet, a portable computer, a network entity, a machine, a sensor, an entertainment device, a medical device, or any other electronic device having circuitry.

The apparatus 900 includes a communication interface (e.g., at least one transceiver) 902, a storage medium 904, a user interface 906, a memory device (e.g., a memory circuit) 908, and a processing circuit 910 (e.g., at least one processor). In various implementations, the user interface 906 may include one or more of: a keypad, a display, a speaker, a microphone, a touchscreen display, of some other circuitry for receiving an input from or sending an output to a user.

These components can be coupled to and/or placed in electrical communication with one another via a signaling bus or other suitable component, represented generally by the connection lines in FIG. 9. The signaling bus may include any number of interconnecting buses and bridges depending on the specific application of the processing circuit 910 and the overall design constraints. The signaling bus links together various circuits such that each of the communication interface 902, the storage medium 904, the user interface 906, and the memory device 908 are coupled to and/or in electrical communication with the processing circuit 910. The signaling bus may also link various other circuits (not shown) such as timing sources, peripherals, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be described any further.

The communication interface 902 provides a means for communicating with other apparatuses over a transmission medium. In some implementations, the communication interface 902 is adapted to facilitate wireless communication of the apparatus 900. For example, the communication interface 902 may include circuitry and/or programming adapted to facilitate the communication of information bi-directionally with respect to one or more communication devices in a network. Thus, in some implementations, the communication interface 902 may be coupled to one or more antennas 912 as shown in FIG. 9 for wireless communication within a wireless communication system. In some implementations, the communication interface 902 may be configured for wire-based communication. For example, the communication interface 902 could be a bus interface, a send/receive interface, or some other type of signal interface including drivers, buffers, or other circuitry for outputting and/or obtaining signals (e.g., outputting signal from and/or receiving signals into an integrated circuit). The communication interface 902 can be configured with one or more standalone receivers and/or transmitters, as well as one or more transceivers. In the illustrated example, the communication interface 902 includes a transmitter 914 and a receiver 916. The communication interface 902 serves as one example of a means for receiving and/or means transmitting.

The memory device 908 may represent one or more memory devices. As indicated, the memory device 908 may maintain object information 918 along with other information used by the apparatus 900. In some implementations, the memory device 908 and the storage medium 904 are implemented as a common memory component. The memory device 908 may also be used for storing data that is manipulated by the processing circuit 910 or some other component of the apparatus 900.

The storage medium 904 may represent one or more computer-readable, machine-readable, and/or processor-readable devices for storing programming, such as processor executable code or instructions (e.g., software, firmware), electronic data, databases, or other digital information. The storage medium 904 may also be used for storing data that is manipulated by the processing circuit 910 when executing programming. The storage medium 904 may be any available media that can be accessed by a general purpose or special purpose processor, including portable or fixed storage devices, optical storage devices, and various other mediums capable of storing, containing or carrying programming.

By way of example and not limitation, the storage medium 904 may include a magnetic storage device (e.g., hard disk, floppy disk, magnetic strip), an optical disk (e.g., a compact disc (CD) or a digital versatile disc (DVD)), a smart card, a flash memory device (e.g., a card, a stick, or a key drive), a random access memory (RAM), a read only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), a register, a removable disk, and any other suitable medium for storing software and/or instructions that may be accessed and read by a computer. The storage medium 904 may be embodied in an article of manufacture (e.g., a computer program product). By way of example, a computer program product may include a computer-readable medium in packaging materials. In view of the above, in some implementations, the storage medium 904 may be a non-transitory (e.g., tangible) storage medium.

The storage medium 904 may be coupled to the processing circuit 910 such that the processing circuit 910 can read information from, and write information to, the storage medium 904. That is, the storage medium 904 can be coupled to the processing circuit 910 so that the storage medium 904 is at least accessible by the processing circuit 910, including examples where at least one storage medium is integral to the processing circuit 910 and/or examples where at least one storage medium is separate from the processing circuit 910 (e.g., resident in the apparatus 900, external to the apparatus 900, distributed across multiple entities, etc.).

Programming stored by the storage medium 904, when executed by the processing circuit 910, causes the processing circuit 910 to perform one or more of the various functions and/or process operations described herein (e.g., a non-transitory computer-readable medium may store computer-executable code, including code to perform one or more of the operations described herein). For example, the storage medium 904 may include operations configured for regulating operations at one or more hardware blocks of the processing circuit 910, as well as to utilize the communication interface 902 for wireless communication utilizing their respective communication protocols.

The processing circuit 910 is generally adapted for processing, including the execution of such programming stored on the storage medium 904. As used herein, the terms “code” or “programming” shall be construed broadly to include without limitation instructions, instruction sets, data, code, code segments, program code, programs, programming, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise.

The processing circuit 910 is arranged to obtain, process and/or send data, control data access and storage, issue commands, and control other desired operations. The processing circuit 910 may include circuitry configured to implement desired programming provided by appropriate media in at least one example. For example, the processing circuit 910 may be implemented as one or more processors, one or more controllers, and/or other structure configured to execute executable programming. Examples of the processing circuit 910 may include a general purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic component, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may include a microprocessor, as well as any conventional processor, controller, microcontroller, or state machine. The processing circuit 910 may also be implemented as a combination of computing components, such as a combination of a DSP and a microprocessor, a number of microprocessors, one or more microprocessors in conjunction with a DSP core, an ASIC and a microprocessor, or any other number of varying configurations. These examples of the processing circuit 910 are for illustration and other suitable configurations within the scope of the disclosure are also contemplated.

According to one or more aspects of the disclosure, the processing circuit 910 may be adapted to perform any or all of the features, processes, functions, operations and/or routines for any or all of the apparatuses described herein. For example, the processing circuit 910 may be configured to perform any of the steps, functions, and/or processes described with respect to FIG. 1-7 or 10. As used herein, the term “adapted” in relation to the processing circuit 910 may refer to the processing circuit 910 being one or more of configured, employed, implemented, and/or programmed to perform a particular process, function, operation and/or routine according to various features described herein.

The processing circuit 910 may be a specialized processor, such as an application-specific integrated circuit (ASIC) that serves as a means for (e.g., structure for) carrying out any one of the operations described in conjunction with FIG. 1-7 or 10. The processing circuit 910 serves as one example of a means for transmitting and/or a means for receiving. In various implementations, the processing circuit 910 may provide and/or incorporate the functionality of the first apparatus 402 of FIG. 4, the apparatus 700 of FIG. 7, or the apparatus 800 of FIG. 8.

According to at least one example of the apparatus 900, the processing circuit 910 may include one or more of a circuit/module for determining 920, a circuit/module for sending 922, a circuit/module for receiving 924, or a circuit/module for identifying 926. In various implementations, the circuit/module for determining 920, the circuit/module for sending 922, the circuit/module for receiving 924, or the circuit/module for identifying 926 may provide and/or incorporate the functionality of the first apparatus 402 of FIG. 4.

As mentioned above, programming stored by the storage medium 904, when executed by the processing circuit 910, causes the processing circuit 910 to perform one or more of the various functions and/or process operations described herein. For example, the programming may cause the processing circuit 910 to perform the various functions, steps, and/or processes described herein with respect to FIG. 1-7 or 10 in various implementations. As shown in FIG. 9, the storage medium 904 may include one or more of code for determining 930, code for sending 932, code for receiving 934, or code for identifying 936. In various implementations, the code for determining 930, the code for sending 932, the code for receiving 934, or the code for identifying 936 may be executed or otherwise used to provide the functionality described herein for the circuit/module for determining 920, the circuit/module for sending 922, the circuit/module for receiving 924, or the circuit/module for identifying 926.

The circuit/module for determining 920 may include circuitry and/or programming (e.g., code for determining 930 stored on the storage medium 904) adapted to perform several functions relating to, for example, determining an attribute. In some aspects, the circuit/module for determining 920 (e.g., a means for determining) may correspond to, for example, a processing circuit.

Initially, the circuit/module for determining 920 may obtain information upon which the determination is to be based. For example, the circuit/module for determining 920 may obtain information (e.g., from the memory device 908, or some other component of the apparatus 900) regarding a generated request for sensor information. The circuit/module for determining 920 may then make the determination based on the obtained information. For example, the circuit/module for determining 920 may select one or more of the attributes as discussed herein (e.g., in conjunction with FIGS. 5 and 6). The circuit/module for determining 920 may then output the attribute(s) to the circuit/module for sending 922, the memory device 908, or some other component.

The circuit/module for sending 922 may include circuitry and/or programming (e.g., code for sending 932 stored on the storage medium 904) adapted to perform several functions relating to, for example, sending (e.g., transmitting) information. In some implementations, the circuit/module for sending 922 may obtain information (e.g., from the circuit/module for determining 920, the memory device 908, or some other component of the apparatus 900), process the information (e.g., encode the information for transmission), and send the information to another component (e.g., the transmitter 914, the communication interface 902, or some other component) that will transmit the information to another device. In some scenarios (e.g., if the circuit/module for sending 922 includes a transmitter), the circuit/module for sending 922 transmits the information directly to another device (e.g., the ultimate destination) via radio frequency signaling or some other type of signaling suitable for the applicable communication medium.

The circuit/module for sending 922 (e.g., a means for sending) may take various forms. In some aspects, the circuit/module for sending 922 may correspond to, for example, an interface (e.g., a bus interface, a send/receive interface, or some other type of signal interface), a communication device, a transceiver, a transmitter, or some other similar component as discussed herein. In some implementations, the communication interface 902 includes the circuit/module for sending 922 and/or the code for sending 932. In some implementations, the circuit/module for sending 922 and/or the code for sending 932 is configured to control the communication interface 902 (e.g., a transceiver or a transmitter) to transmit information.

The circuit/module for receiving 924 may include circuitry and/or programming (e.g., code for receiving 934 stored on the storage medium 904) adapted to perform several functions relating to, for example, receiving information. In some scenarios, the circuit/module for receiving 924 may obtain information (e.g., from the communication interface 902, the memory device, or some other component of the apparatus 900) and process (e.g., decode) the information. In some scenarios (e.g., if the circuit/module for receiving 924 is or includes an RF receiver), the circuit/module for receiving 924 may receive information directly from a device that transmitted the information. In either case, the circuit/module for receiving 924 may output the obtained information to another component of the apparatus 900 (e.g., the circuit/module for identifying 926, the memory device 908, or some other component).

The circuit/module for receiving 924 (e.g., a means for receiving) may take various forms. In some aspects, the circuit/module for receiving 924 may correspond to, for example, an interface (e.g., a bus interface, a send/receive interface, or some other type of signal interface), a communication device, a transceiver, a receiver, or some other similar component as discussed herein. In some implementations, the communication interface 902 includes the circuit/module for receiving 924 and/or the code for receiving 934. In some implementations, the circuit/module for receiving 924 and/or the code for receiving 934 is configured to control the communication interface 902 (e.g., a transceiver or a receiver) to receive information.

The circuit/module for identifying 926 may include circuitry and/or programming (e.g., code for identifying 936 stored on the storage medium 904) adapted to perform several functions relating to, for example identifying an object. In some aspects, the circuit/module for identifying 926 (e.g., a means for identifying) may correspond to, for example, a processing circuit.

In some aspects, the circuit/module for identifying 926 may identify an object based on a received response. In this case, the circuit/module for identifying 926 may obtain response information (e.g., from the circuit/module for receiving 924, the memory device 908, or some other component). Next, the circuit/module for identifying 926 determines whether the response information indicates that there is an object in the vicinity of the apparatus 900. In some aspects, the circuit/module for identifying 926 may perform one or more of the operations described herein (e.g., in conjunction with FIGS. 1-8) to identify a nearby object (e.g., determine the location, size, motion, object type, or other information about the object). The circuit/module for identifying 926 may then output an indication of the identified object (e.g., to the communication interface 902, the memory device 908, or some other component).

An Example Process

FIG. 10 illustrates a process 1000 for communication in accordance with some aspects of the disclosure. The process 1000 may take place within a processing circuit (e.g., the processing circuit 910 of FIG. 9), which may be located in a vehicle, a component of a vehicle, a communication module, a sensor module, a sensor device, a peer-to-peer device, a UE, a CPE, a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other suitable apparatus. In some aspects, the process 1000 may be performed by the first apparatus 402 of FIG. 4. For example, blocks 1002, 1008, and 1010 may be performed by the object detection processor 408, and blocks 1004 and 1006 may be performed by the transceiver 410. Of course, in various aspects within the scope of the disclosure, the process 1000 may be implemented by any suitable apparatus capable of supporting communication-related operations.

At block 1002, an apparatus (e.g., a vehicle or an object detection device at a vehicle) determines (e.g., selects) at least one attribute for a request for sensor information.

The at least one attribute may take different forms in different scenarios. In some aspects, the at least one attribute may include a request for all sensor information. In some aspects, the at least one attribute may include a request for a subset of sensor information. In some aspects, the at least one attribute may include a location of the apparatus. In some aspects, the at least one attribute may include a request for a specific sensor feed. In some aspects, the at least one attribute may include a period of time for responding to the request. In some aspects, the at least one attribute may include an indication of a direction for sensing. In some aspects, the at least one attribute may include an indication of a distance to control which responders respond to the request. In some aspects, the at least one attribute may include an indication of a distance to control when to respond to the request. In some aspects, the at least one attribute may include any combination of the above.

In some implementations, the circuit/module for determining 920 of FIG. 9 performs the operations of block 1002. In some implementations, the code for determining 930 of FIG. 9 is executed to perform the operations of block 1002.

At block 1004, the apparatus sends the request including the at least one attribute. In implementations where the apparatus includes a transceiver, the request may be sent via the transceiver.

In some implementations, the circuit/module for sending 922 of FIG. 9 performs the operations of block 1004. In some implementations, the code for sending 932 of FIG. 9 is executed to perform the operations of block 1004.

At block 1006, the apparatus receives a response to the request. In implementations where the apparatus includes a transceiver, the response may be received via the transceiver.

In some implementations, the circuit/module for receiving 924 of FIG. 9 performs the operations of block 1006. In some implementations, the code for receiving 934 of FIG. 9 is executed to perform the operations of block 1006.

At block 1008, the apparatus identifies at least one object in a vicinity of the apparatus based on the response.

In some implementations, the circuit/module for identifying 926 of FIG. 9 performs the operations of block 1008. In some implementations, the code for identifying 936 of FIG. 9 is executed to perform the operations of block 1008.

At optional block 1010, the apparatus may send an acknowledgment as a result of receiving the response at block 1006.

In some implementations, the circuit/module for sending 922 of FIG. 9 performs the operations of block 1010. In some implementations, the code for sending 932 of FIG. 9 is executed to perform the operations of block 1010.

In some aspects, the process 1000 may further include receiving at least one other response to the request, wherein the identification of the at least one object is further based on the at least one other response; sending a first acknowledgment to a first responder that sent the response; and sending at least one second acknowledgment to at least one second responder that sent the at least one other response.

In some aspects, a process may include any combination of two or more of the operations of FIG. 10.

Another Example Apparatus

FIG. 11 illustrates a block diagram of an example hardware implementation of an apparatus 1100 configured to communicate according to one or more aspects of the disclosure. The apparatus 1100 could embody or be implemented within a vehicle, a component of a vehicle, a communication module, a sensor module, a sensor device, a peer-to-peer device, a UE, a CPE, a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other type of device that supports wireless communication. In various implementations, the apparatus 1100 could embody or be implemented within an access terminal, an access point, or some other type of device. In various implementations, the apparatus 1100 could embody or be implemented within a mobile phone, a smart phone, a tablet, a portable computer, a server, a personal computer, a network entity, a machine, a sensor, an entertainment device, a medical device, or any other electronic device having circuitry.

The apparatus 1100 includes a communication interface (e.g., at least one transceiver) 1102, a storage medium 1104, a user interface 1106, a memory device 1108 (e.g., storing object information 1118), and a processing circuit 1110 (e.g., at least one processor). In various implementations, the user interface 1106 may include one or more of: a keypad, a display, a speaker, a microphone, a touchscreen display, of some other circuitry for receiving an input from or sending an output to a user. The communication interface 1102 may be coupled to one or more antennas 1112, and may include a transmitter 1114 and a receiver 1116. In general, the components of FIG. 11 may be similar to corresponding components of the apparatus 900 of FIG. 9.

According to one or more aspects of the disclosure, the processing circuit 1110 may be adapted to perform any or all of the features, processes, functions, operations and/or routines for any or all of the apparatuses described herein. For example, the processing circuit 1110 may be configured to perform any of the steps, functions, and/or processes described with respect to FIGS. 1-4, 6-8, 12, and 13. As used herein, the term “adapted” in relation to the processing circuit 1110 may refer to the processing circuit 1110 being one or more of configured, employed, implemented, and/or programmed to perform a particular process, function, operation and/or routine according to various features described herein.

The processing circuit 1110 may be a specialized processor, such as an application-specific integrated circuit (ASIC) that serves as a means for (e.g., structure for) carrying out any one of the operations described in conjunction with FIGS. 1-4, 6-8, 12, and 13. The processing circuit 1110 serves as one example of a means for transmitting and/or a means for receiving. In various implementations, the processing circuit 1110 may provide and/or incorporate the functionality of the second apparatus 404 of FIG. 4.

According to at least one example of the apparatus 1100, the processing circuit 1110 may include one or more of a circuit/module for receiving 1120, a circuit/module for identifying 1122, a circuit/module for sensing 1124, a circuit/module for generating 1126, a circuit/module for determining when to send 1128, a circuit/module for sending 1130, or a circuit/module for determining whether an acknowledgment has been received 1132. In various implementations, the circuit/module for receiving 1120, the circuit/module for identifying 1122, the circuit/module for sensing 1124, the circuit/module for generating 1126, the circuit/module for determining when to send 1128, the circuit/module for sending 1130, or the circuit/module for determining whether an acknowledgment has been received 1132 may provide and/or incorporate the functionality of the second apparatus 404 of FIG. 4, the apparatus 700 of FIG. 7, or the apparatus 800 of FIG. 8.

As mentioned above, programming stored by the storage medium 1104, when executed by the processing circuit 1110, causes the processing circuit 1110 to perform one or more of the various functions and/or process operations described herein. For example, the programming may cause the processing circuit 1110 to perform the various functions, steps, and/or processes described herein with respect to FIGS. 1-4, 6-8, 12, and 13 in various implementations. As shown in FIG. 11, the storage medium 1104 may include one or more of code for receiving 1134, code for identifying 1136, code for sensing 1138, code for generating 1140, code for determining when to send 1142, code for sending 1144, or code for determining whether an acknowledgment has been received 1146. In various implementations, the code for receiving 1134, the code for identifying 1136, the code for sensing 1138, the code for generating 1140, the code for determining when to send 1142, the code for sending 1144, or the code for determining whether an acknowledgment has been received 1146 may be executed or otherwise used to provide the functionality described herein for the circuit/module for receiving 1120, the circuit/module for identifying 1122, the circuit/module for sensing 1124, the circuit/module for generating 1126, the circuit/module for determining when to send 1128, the circuit/module for sending 1130, or the circuit/module for determining whether an acknowledgment has been received 1132.

The circuit/module for receiving 1120 may include circuitry and/or programming (e.g., code for receiving 1134 stored on the storage medium 1104) adapted to perform several functions relating to, for example, receiving information. In some scenarios, the circuit/module for receiving 1120 may obtain information (e.g., from the communication interface 1102, the memory device, or some other component of the apparatus 1100) and process (e.g., decode) the information. In some scenarios (e.g., if the circuit/module for receiving 1120 is or includes an RF receiver), the circuit/module for receiving 1120 may receive information directly from a device that transmitted the information. In either case, the circuit/module for receiving 1120 may output the obtained information to another component of the apparatus 1100 (e.g., the circuit/module for identifying 1122, the memory device 1108, or some other component).

The circuit/module for receiving 1120 (e.g., a means for receiving) may take various forms. In some aspects, the circuit/module for receiving 1120 may correspond to, for example, an interface (e.g., a bus interface, a send/receive interface, or some other type of signal interface), a communication device, a transceiver, a receiver, or some other similar component as discussed herein. In some implementations, the communication interface 1102 includes the circuit/module for receiving 1120 and/or the code for receiving 1134. In some implementations, the circuit/module for receiving 1120 and/or the code for receiving 1134 is configured to control the communication interface 1102 (e.g., a transceiver or a receiver) to receive information.

The circuit/module for identifying 1122 may include circuitry and/or programming (e.g., code for identifying 1136 stored on the storage medium 1104) adapted to perform several functions relating to, for example identifying an attribute. In some aspects, the circuit/module for identifying 1122 (e.g., a means for identifying) may correspond to, for example, a processing circuit.

In some aspects, the circuit/module for identifying 1122 may identify an attribute based on a received request. In this case, the circuit/module for identifying 1122 may obtain request information (e.g., from the circuit/module for receiving 1120, the memory device 1108, or some other component). Next, the circuit/module for identifying 1122 may extract one or more attributes from the request information. The circuit/module for identifying 1122 may then output the attributes (e.g., to the circuit/module for sensing 1124, the memory device 1108, or some other component).

The circuit/module for sensing 1124 may include circuitry and/or programming (e.g., code for sensing 1138 stored on the storage medium 1104) adapted to perform several functions relating to, for example, sensing for one or more objects. In some aspects, the circuit/module for sensing 1124 (e.g., a means for sensing) may correspond to, for example, a processing circuit.

In some aspects, the circuit/module for sensing 1124 may obtain information to control the sensing (e.g., from the circuit/module for identifying 1122, the memory device 1108, or some other component) and then invoke the sensing accordingly (e.g., sense in a particular direction, sense using a particular sensor, sense at a particular time, sense for particular objects, etc.) as discussed herein (e.g., in conjunction with FIGS. 1-11). The circuit/module for sensing 1124 may then output the result of the sensing (e.g., to the circuit/module for generating 1130, the circuit/module for determining when to send 1128, the memory device 1108, or some other component).

The circuit/module for generating 1126 may include circuitry and/or programming (e.g., code for generating 1140 stored on the storage medium 1104) adapted to perform several functions relating to, for example, generating a response. In some aspects, the circuit/module for generating 1126 (e.g., a means for generating) may correspond to, for example, a processing circuit.

In some aspects, the circuit/module for generating 1126 may obtain information to be included in a response (e.g., from the circuit/module for sensing 1124, the memory device 1108, or some other component) and then formulate a response (e.g., a response packet) that includes this information. The circuit/module for generating 1126 may then output the response (e.g., to the circuit/module for sending 1130, the circuit/module for determining when to send 1128, the memory device 1108, or some other component).

The circuit/module for determining when to send 1128 may include circuitry and/or programming (e.g., code for determining when to send 1142 stored on the storage medium 1104) adapted to perform several functions relating to, for example, determining when to send a response. In some aspects, the circuit/module for determining 1128 (e.g., a means for determining) may correspond to, for example, a processing circuit.

Initially, the circuit/module for determining when to send 1128 may obtain information upon which the determination is to be based. For example, the circuit/module for determining when to send 1128 may obtain information about a request and/or a requestor (e.g., from the memory device 1108, the circuit/module for receiving 1120, or some other component of the apparatus 1100) regarding a received request for sensor information. The circuit/module for determining when to send 1128 may then make the determination based on the obtained information. For example, the circuit/module for determining when to send 1128 may determine a time to send a response based on a distance of the apparatus 1100 from the requestor, whether sensor visibility of the apparatus 1100 is beyond a threshold distance, a random delay, or any combination thereof as discussed herein (e.g., in conjunction with FIGS. 1-9). The circuit/module for determining when to send 1128 may then output an indication of the time to send (e.g., to the circuit/module for sending 1130, the memory device 1108, or some other component).

The circuit/module for sending 1130 may include circuitry and/or programming (e.g., code for sending 1144 stored on the storage medium 1104) adapted to perform several functions relating to, for example, sending (e.g., transmitting) information. In some implementations, the circuit/module for sending 1130 may obtain information (e.g., from the circuit/module for determining 1128, the memory device 1108, or some other component of the apparatus 1100), process the information (e.g., encode the information for transmission), and send the information to another component (e.g., the transmitter 1114, the communication interface 1102, or some other component) that will transmit the information to another device. In some scenarios (e.g., if the circuit/module for sending 1130 includes a transmitter), the circuit/module for sending 1130 transmits the information directly to another device (e.g., the ultimate destination) via radio frequency signaling or some other type of signaling suitable for the applicable communication medium.

The circuit/module for sending 1130 (e.g., a means for sending) may take various forms. In some aspects, the circuit/module for sending 1130 may correspond to, for example, an interface (e.g., a bus interface, a send/receive interface, or some other type of signal interface), a communication device, a transceiver, a transmitter, or some other similar component as discussed herein. In some implementations, the communication interface 1102 includes the circuit/module for sending 1130 and/or the code for sending 1144. In some implementations, the circuit/module for sending 1130 and/or the code for sending 1144 is configured to control the communication interface 1102 (e.g., a transceiver or a transmitter) to transmit information.

The circuit/module for determining whether an acknowledgment has been received 1132 may include circuitry and/or programming (e.g., code for determining whether an acknowledgment has been received 1146 stored on the storage medium 1104) adapted to perform several functions relating to, for example, determining whether an acknowledgment of a response has been received a response. In some aspects, the circuit/module for determining 1132 (e.g., a means for determining) may correspond to, for example, a processing circuit.

Initially, the circuit/module for determining whether an acknowledgment has been received 1132 may obtain information upon which the determination is to be based. For example, the circuit/module for determining whether an acknowledgment has been received 1132 may obtain information (e.g., from the memory device 1108, the circuit/module for sending 1130, or some other component of the apparatus 1100) about a response that was sent by the apparatus 1100. The circuit/module for determining whether an acknowledgment has been received 1132 may then make the determination based on the obtained information. For example, the circuit/module for determining whether an acknowledgment has been received 1132 may determine whether an acknowledgement having a certain identifier associated with the response has been received. The circuit/module for determining whether an acknowledgment has been received 1132 may then output an indication of the determination (e.g., to the circuit/module for sending 1130, the memory device 1108, or some other component).

Another Example Process

FIG. 12 illustrates a process 1200 for communication in accordance with some aspects of the disclosure. In some aspects, the process 1200 may complementary to the process 1000 of FIG. 10. For example, the process 1200 may be performed in response to the process 1000. The process 1200 may take place within a processing circuit (e.g., the processing circuit 1110 of FIG. 11), which may be located in a vehicle, a component of a vehicle, a communication module, a sensor module, a sensor device, a peer-to-peer device, a UE, a CPE, a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other suitable apparatus. In some aspects, the process 1200 may be performed by the second apparatus 404 of FIG. 4. For example, block 1206 may be performed by the at least one sensor 412, blocks 1204, 1208, and 1210 may be performed by the object detection processor 414, and blocks 1202 and 1212 may be performed by the transceiver 416. Of course, in various aspects within the scope of the disclosure, the process 1200 may be implemented by any suitable apparatus capable of supporting communication-related operations.

At block 1202, an apparatus (e.g., an object detection device at a vehicle) receives a request for sensor information from a requestor. In implementations where the apparatus includes a transceiver, the request may be received via the transceiver.

In some implementations, the circuit/module for receiving 1120 of FIG. 11 performs the operations of block 1202. In some implementations, the code for receiving 1134 of FIG. 11 is executed to perform the operations of block 1202.

At block 1204, the apparatus identifies at least one attribute of the request. The at least one attribute may take different forms in different scenarios. In some aspects, the at least one attribute may include a request for all sensor information. In some aspects, the at least one attribute may include a request for a subset of sensor information. For example, the at least one attribute may indicate that the sensing is to be directed to a blind spot of the requestor, a designated area, a certain range of (distance from) the requestor, a certain direction, or any combination thereof. In some aspects, the at least one attribute may include a request for a specific sensor feed (e.g., Lidar data, camera data, radar data, object data, etc.). In some aspects, the at least one attribute may indicate a period of time for responding to the request. In some aspects, the at least one attribute may include any combination of the above.

In some implementations, the circuit/module for identifying 1122 of FIG. 11 performs the operations of block 1204. In some implementations, the code for identifying 1136 of FIG. 11 is executed to perform the operations of block 1204.

At block 1206, the apparatus senses for objects. For example, the apparatus may sense for objects before and/or after receiving the request. In the latter case, the sensing may be based on (e.g., in response to) the request.

In some aspects, the at least one attribute may include a direction of sensing as indicated in the request (e.g., a direction relative to the requestor or the apparatus). In this case, the sensing may be based on the direction (e.g., the apparatus senses for objects in the indicated direction).

In some implementations, the circuit/module for sensing 1124 of FIG. 11 performs the operations of block 1206. In some implementations, the code for sensing 1138 of FIG. 11 is executed to perform the operations of block 1206.

At block 1208, the apparatus generates a response to the request based on the sensing and the at least one attribute. For example, the apparatus may determine whether and/or how to generate the request based on one or more request attributes. In some aspects, the generation of the response may include determining that at least one object has been reported in another response to the request, and abstaining from reporting the at least one object (i.e., that has already been reported).

In some aspects, the at least one attribute may include a location of the requestor as indicated in the request. In this case, the generation of the response may be based on the location. For example, the response might only include objects that are within a specified range of the requestor's location.

In some implementations, the circuit/module for generating 1126 of FIG. 11 performs the operations of block 1208. In some implementations, the code for generating 1140 of FIG. 11 is executed to perform the operations of block 1208.

At block 1210, the apparatus determines when to send the response. In some aspects, the determination of when to send the response may be based on: a distance of the apparatus from the requestor, whether sensor visibility of the apparatus is beyond a threshold distance, a random delay, or any combination thereof.

In some implementations, the circuit/module for determining when to send 1128 of FIG. 11 performs the operations of block 1210. In some implementations, the code for determining when to send 1142 of FIG. 11 is executed to perform the operations of block 1210.

At block 1212, the apparatus sends the response according to the determination of block 1210 (e.g., at a time determined at block 1210). In implementations where the apparatus includes a transceiver, the response may be sent via the transceiver.

In some implementations, the circuit/module for sending 1130 of FIG. 11 performs the operations of block 1212. In some implementations, the code for sending 1144 of FIG. 11 is executed to perform the operations of block 1212.

In some aspects, the process 1200 may further include determining whether an acknowledgment of the response has been received; and re-sending the response if the acknowledgment has not been received.

In some aspects, a process may include any combination of two or more of the operations of FIG. 12.

Yet Another Example Process

FIG. 13 illustrates a process 1300 for communication in accordance with some aspects of the disclosure. In some aspects, the process 1300 may be performed in conjunction with (e.g., in addition to or as part of) the process 1200 of FIG. 12. For example, the process 1300 may be performed after block 1212 of FIG. 12. The process 1300 may take place within a processing circuit (e.g., the processing circuit 1110 of FIG. 11), which may be located in a vehicle, a component of a vehicle, a communication module, a sensor module, a sensor device, a peer-to-peer device, a UE, a CPE, a gNB, a transmit receive point (TRP), a base station (BS), an eNode B (eNB), or some other suitable apparatus. In some aspects, the process 1300 may be performed by the second apparatus 404 of FIG. 4 (e.g., by the object detection processor 414). Of course, in various aspects within the scope of the disclosure, the process 1300 may be implemented by any suitable apparatus capable of supporting communication-related operations.

At block 1302, an apparatus (e.g., an object detection device at a vehicle) determines whether an acknowledgment of the response has been received.

In some implementations, the circuit/module for determining when to send 1128 of FIG. 11 performs the operations of block 1302. In some implementations, the code for determining when to send 1142 of FIG. 11 is executed to perform the operations of block 1302.

At block 1304, the apparatus re-sends the response if the acknowledgment has not been received. In implementations where the apparatus includes a transceiver, the response may be re-sent via the transceiver.

In some implementations, the circuit/module for sending 1130 of FIG. 11 performs the operations of block 1304. In some implementations, the code for sending 1144 of FIG. 11 is executed to perform the operations of block 1304.

In some aspects, a process may include any combination of two or more of the operations of FIG. 13.

Some Example Proactive Sensor Information Sharing Techniques

In the following examples, some sensor sharing techniques are presented which may be implemented to permit an apparatus associated with one object (e.g., a vehicle, etc.) to proactively seek to share sensor information with one or more other apparatuses associated with one or more other objects. Such techniques, as described herein, may be of particular use when one object is occluding or may occlude sensing by another object.

By way of an example, attention is drawn first to FIG. 19, which is a block diagram illustrating an example arrangement 1900 of objects 1902, 1904, 1906, and 1908. As illustrated by region 1910 between the dashed lines, object 1906 may occlude sensing by object 1902 within region 1910. Such occlusion from sensing may, for example, occur presently, or for some period of time, or may be expected/estimated to occur in the future, etc. From the vantage point of object 1902, as illustrated, the occlusion by object 1906 may result in region 1910 and hence one or more sensors (not shown) of object 1902 may be unable to detect object 1908. However, in certain instances, one or more sensors of object 1906 may be able to detect objects in region 1910, such as, object 1908. Of further note, as shown object 1904 may also be able to detect all or part of region 1910 using one of more sensors. Thus, in FIG. 19, objects 1906 and/or 1904 may be able to share sensor information or the like with object 1902 which may alert object 1902 about the presence or absence of one or more objects of interest/concern that may be within region 1910 but not directly detected by sensor(s) of object 1902.

With this example arrangement 1900 in mind, there are be techniques that may be implemented to support the sharing of sensor information or the like. FIGS. 14-15 describe some processes that may be implemented to “proactively” determine that an occluded region may exist for another object and to share applicable sensor information with that other object. For example, as described in greater detail below, process 1400 and possibly process 1500 may be implemented in whole or part by an apparatus of object 1906 to determine that an occlusion such as region 1910 may exist for object 1902 and to respond by proactively sharing applicable sensor information with an apparatus of object 1902. Similarly, in FIG. 16 also as described in greater detail below, process 1600 may be implemented in whole or part by an apparatus of object 1902 to receive one or more such messages from an apparatus of object 1906 sharing applicable sensor information or the like with regard to all or part of region 1910, and/or a presence or absence of one or more detected objects therein. Such shared sensor information may, for example, be used by the apparatus of object 1902 to affect one or more functions or other processes that may use such sensor information.

In another example aspect of this description, a request-response technique may be implemented in share applicable sensor information for an occluded region. For example, in FIG. 17 as described in greater detail below, process 1700 may be implemented in whole or part by an apparatus of object 1902 to determine that an occlusion such as region 1910 may exist for sensor detection from object 1902, e.g., due to object 1906, and to transmit one or more request messages to one or more other apparatuses of one or more other objects seeking applicable sensor information for all or part of one or more occluded regions, e.g., region 1910. For example, a request message may be sent to an apparatus of object 1906 and a response with applicable sensor information for at least a portion of region 1910 may be subsequently received.

Similarly, in FIG. 18 also as described in greater detail below, process 1800 may be implemented in whole or part by an apparatus of object 1906 to receive one or more request messages from one or more apparatuses of one or more other objects seeking applicable sensor information for all or part of one or more regions that may be occluded in some manner to one or more sensors of the other object(s). For example, an apparatus of object 1906 may receive a request for sensor information for region 1910 from an apparatus of object 1902, and responds with one or more response messages based, at least in part, on applicable determined sensor information.

Attention is drawn next to FIG. 14, which is a flowchart illustrating an example of a process 1400 to support a proactive mode of sharing sensor information, in accordance with some aspects of the disclosure. Process 1400 may be implemented by an apparatus of a first object which may be able to communicate with an apparatus of a second object.

At example block 1402, a determination may be made that a second object is within at least a threshold proximity from the first object. For example, such a proximity determination may be based, at least in part, on one or more sensors coupled to the apparatus at the first object. In certain instances, a proximity determination may correspond to a potential arrangement, e.g., as for example illustrated in FIG. 19, wherein the objects 1902 and 1906 may be within a threshold proximity of one another such that one or more sensors of object 1902 may be occluded in some manner by all or part of object 1906. Thus, for example, a threshold proximity determination may be based, at least in part, on a range associated with one or more sensors capable of being operatively occluded in some manner. In certain instances, a threshold proximity determination may be based, at least in part, on detecting the second object using one or more sensors and/or corresponding sensor information. In certain instances, a threshold proximity determination may be based, at least in part, on geographic or other like location information that may be shared by the apparatuses and/or other devices, e.g., network devices, etc. These are, of course, just a few examples as to how a second object may be determined to be within a threshold proximity from a sensor or other part of a first object.

At example block 1404, a set of detected objects may be determined using, at least in part, one or more sensors coupled to the apparatus of the first object. In certain instances, the set of detected objects may correspond to just the second object. In other instances, the set of detected objects may correspond to a plurality of objects. In certain instances, the set of detected object may comprise or otherwise be based, at least in part, on sensor information regarding such object(s). With regard to the example arrangement 1900 in FIG. 19, a set of detected objects for object 1906 may comprise or otherwise correspond to objects 1902, 1904, and 1908.

At example block 1406, all or part of a subset of the set of detected objects from block 1404 may be determined to presently occlude sensor detection in some manner from the second object as determined at block 1402. At example block 1406, all or part of a subset of the set of detected objects from block 1404 may be determined (e.g., estimated, expected, etc.) to occlude sensor detection in some manner from the second object for some period of time or at some point in time. In certain instances, such a subset may comprise a null set or other like sensor information indicating an absence of detected objects. In the example arrangement in FIG. 19, a relative position or other like information regarding objects 1902 and 1906 may be determined to predict a region of likely occlusion as illustrated by region 1910. Thus, an example subset of the set of detected objects with regard to arrangement 1900 may comprise or otherwise correspond to object 1908, which is illustrated as being presently located or possibly expected to be located, at least in part, in region 1910. Although region 1910 is illustrated in two dimensions, it should be understood that in certain instances such a region may comprise or otherwise correspond to a three dimensional region of space.

At example block 1408, the apparatus of the first object may transmit a message to the second apparatus of the second object. The message may, for example, correspond to at least one detected object of the subset of the set of detected objects. Thus, for example, the message may comprise or correspond to all or part of the sensor information regarding an area of occlusion, e.g., as determined at block 1406. In some instances, the message may convey the presence or absence of objects, or possibly other information regarding one or more detected object(s).

FIG. 15 is a flowchart illustrating an example of a process 1500 to further support the sharing of sensor information, in accordance with some aspects of the disclosure. By way of example, all or part of process 1500 may be implemented as part of block 1406 as presented by way of example above.

At example block 1502, for at least one of the detected objects in the set of detected objects, at least one parameter corresponding to a present or expected relative position of the detected object with respect to the first object or the second object may be determined. For example, such relative position(s) may be indicative of an occluded region that may possibly change over time, e.g., due to motion of the first object and/or second object. In certain instances, the first and second objects may be moving in the same or similar direction, but possibly at different speeds. In certain instances, the first and second objects may be moving in opposite directions, etc. In certain instances, one or both objects may be stationary.

At example block 1504, a determination may be made as to whether at least one detected object is presently, or may become, likely occluded from sensor detection from the second object based, at least in part, on the at least one parameter from block 1502. By way of some examples, in certain instances at least one parameter may comprise or otherwise corresponds a distance measurement between the first object and the second object, a doppler measurement corresponding to motion of the first object, the second object or both, an angular direction measurement from the first object to the second object, a measured direction of travel or heading of the second object, a measured speed or the like of travel of the second object, a measured orientation of the second object, a measured size of the second object (e.g., length, width, height, etc.), a detected type of the second object (e.g., bus, car, bicycle, truck, plane, helicopter, etc.), or a detected type of the second apparatus (e.g., sensor capabilities/functions, service provider, manufacturer, model, etc.), or the like or some combination thereof.

Attention is drawn next to FIG. 16, which is a flowchart illustrating an example of a process 1600 to support a receiving mode of sharing sensor information, in accordance with some aspects of the disclosure. Process 1600 may be implemented in whole or in part by an apparatus of a first object.

At example block 1602, a message may be received from a second apparatus of a second object. The received message may, for example, comprise sensor information corresponding to at least one detected object that the second apparatus has determined to be presently occluded and/or is expected to be occluded by the second object from sensor detection by at least one sensor of the first object coupled to the apparatus. Thus, by way of example, in FIG. 19 the first object may comprise object 1902 and the second object may comprise object 1906, and the detected object may comprise object 1908 which is illustrated in example occluded region 1910. In certain instances, the received message was proactively transmitted by the second apparatus, e.g., not transmitted in response to a request. In certain instances, the received message may be transmitted via a unicast mode of communication that is supported by the communicating apparatuses.

At example block 1604, the first apparatus may affect at least one function or other like process provided by the apparatus based, at least in part, on the sensor information of the received message. By way of some examples, in certain instances, at least one sensor associated with the sensor information may comprise, at least a portion of at least one of a radar-base sensor, an infra-red (IR)-based sensor, a sonar-based sensor, a LIDAR-based sensor, an image-based sensor, or possibly a wireless communication interface through which like sensor/positioning information may be obtained, exchanged, measured, etc. By way of some examples, certain functions/processes that may be affected may include navigation, routing, driving, alerts, etc.

Attention is drawn next to FIG. 17, which is a flowchart illustrating an example of a process 1700 to support a request-response mode of sharing sensor information from an aspect of a requesting apparatus, in accordance with some aspects of the disclosure. Here, for example, a requesting apparatus may comprise an apparatus of a first object.

At example block 1702, the apparatus may determine that a second object comprising a second apparatus is presently occluding or is expected to occlude detection of one or more potential objects (e.g., within a region) by at least one sensor of the first object that is coupled to the apparatus. Thus, with regard to the example in FIG. 19, the first object may comprise object 1902 and the second object may comprise object 1906, and the determined region may comprise region 1910.

At example block 1704, a request message may be transmitted to the second apparatus, e.g., the request message may comprise information corresponding to the region that may be occluded from sensor detection in some manner. In certain implementations, for example, a message may comprise or correspond to one or more types of occluded sensor information. With regard to the example in FIG. 19, a request message may be indicative of all or part of region 1910.

At example block 1706, the apparatus may receive a response from the second apparatus, the response may comprise sensor information for at least a portion of the region as determined, at least in part, by one or more sensors of the second object coupled to the second apparatus. Thus, with regard to the example in FIG. 19, a response may be indicative of object 1908 which as illustrated in located in region 1910.

Attention is drawn next to FIG. 18, which is a flowchart illustrating an example of a process 1800 to support a request-response mode of sharing sensor information from the aspect of a responding apparatus, in accordance with some aspects of the disclosure. Here, for example, a responding apparatus may comprise an apparatus of a first object.

At example block 1802, the apparatus may receive a request message, from a second apparatus of a second object, the request message comprising information corresponding to a region that the second apparatus has determined is presently occluded or is expected to be occluded by the first object from sensor detection by at least one sensor of the second object coupled to the second apparatus. Thus, with regard to the example in FIG. 19, the first object may comprise object 1906 and the second object may comprise object 1902, and the region may comprise region 1910.

At example block 1804, the apparatus may determine sensor information for at least a portion of the region from one or more sensors of the first object coupled to the apparatus. Here, with regard to the example in FIG. 19, the sensor information may correspond to a subset of a set of detected objects, which may correspond to object 1908 which as illustrated in located in region 1910.

At example block 1806, the apparatus may transmit a response to the second apparatus, the response being based, at least in part, on the determined sensor information, e.g., at block 1804.

The examples presented herein, and in particular those illustrated via the examples in FIGS. 14-19 may be implemented to provide sharing of sensor information for V2X communication, for example for sensor information based on radar sensor target detection. As presented, certain techniques for sensor information sharing involves sharing with objects detected with vehicle's proximity. In certain instances, sensor information sharing may be based, at least in part, on communication techniques that include a broadcast mode, e.g., wherein apparatuses share (possibly all) detected object related sensor information. Such techniques are, for example, defines in ETSI for collective perception services, see, e.g., TS 103 324, TR 103 562. A potential concern with such techniques is that there is a potential for congestion as one might be sharing information that no other apparatus actually needs.

In another technique, such as some request-response techniques, apparatuses may broadcast a request for sensor information for objects in particular directions (e.g. in which an object may be occluded by other various objects), and multiple other apparatuses may receive such broadcasted request(s) and end up transmitting sensor information that may be duplicative/cumulative or possibly worse conflicting in some manner with sensor information from other apparatuses. Such techniques may be particularly wasteful of wireless and/or computational resources in congested (e.g., traffic) scenarios.

As presented by way of example herein, are several sensor information sharing modes that may prove to be more beneficial. These modes include proactive unicast modes wherein one apparatus may determine that there is or may be an occluded region (e.g., an obstructed field of view for one or more sensors in certain direction), and proactively transmits applicable sensor information for the region, e.g., using V2X communications over unicast, multicast, or broadcast transmissions. In an example unicast request-response mode an apparatus may detect that another object is within a threshold proximity, determine that there may be an occluded region, transmit one or more request messages for sensor information of interest in the occluded region and receive corresponding response, e.g., over unicast, multicast, or broadcast transmissions.

In accordance with some further example implementations, a method of communication for an apparatus of a first object may be provided, comprising, at the apparatus: determining that a second object comprising a second apparatus is presently occluding or is expected to occlude detection of one or more potential objects within a region by at least one sensor of the first object coupled to the apparatus; transmitting a request message to the second apparatus, the request message comprising information corresponding to the region; and receiving a response from the second apparatus, the response comprising sensor information for at least a portion of the region as determined, at least in part, by one or more sensors of the second object coupled to the second apparatus. In certain examples such a method may further comprise: determining at least one parameter corresponding to a relative position of the second object with respect to the at least one sensor of the first object, wherein determining that the second object is presently occluding or is expected to occlude detection of one or more potential objects within the region by the at least one sensor of the first object is based, at least in part, on the at least one parameter. In certain examples of such a method the parameter may correspond to at least one of: a distance measurement between the first object and the second object; a doppler measurement corresponding to motion of the first object, the second object or both; an angular direction measurement from the first object to the second object; a measured direction of travel of the second object; a measured speed of travel of the second object; a measured orientation of the second object; a measured size of the second object; a detected type of the second object; or a detected type of the second apparatus. In certain examples of such a method the request message is transmitted proactively by the apparatus. In certain examples of such a method the request message is transmitted in a unicast mode of communication supported by at least the apparatus and the second apparatus. In certain examples such a method the sensor comprise at least a portion of at least one of: a radar-base sensor; an infra-red (IR)-based sensor, a sonar-based sensor; a LIDAR-based sensor; an image-based sensor; or a wireless communication interface. In certain examples of such a method the first object, the second object, or both comprises a vehicle. In certain examples of such a method the apparatus, the second apparatus, or both, comprise a user equipment (UE).

In accordance with still other further example implementations, a method of communication for an apparatus of a first object may be provided which comprises: receiving a request message, from a second apparatus of a second object, the request message comprising information corresponding to a region that the second apparatus has determined is presently occluded or is expected to be occluded by the first object from sensor detection by at least one sensor of the second object coupled to the second apparatus; determining sensor information for at least a portion of the region from one or more sensors of the first object coupled to the apparatus; and transmitting a response to the second apparatus, the response being based, at least in part, on the determined sensor information. In certain examples of such a method, the response message may be transmitted in a unicast mode of communication supported by at least the apparatus and the second apparatus. In certain examples of such a method, a sensor of the first object may comprise at least a portion of at least one of: a radar-base sensor; an infra-red (IR)-based sensor, a sonar-based sensor; a LIDAR-based sensor; an image-based sensor; or a wireless communication interface. In certain examples of such a method, the first object, the second object, or both comprises a vehicle. In certain examples of such a method, the apparatus, the second apparatus, or both, comprise a user equipment (UE).

Other Aspects

The examples set forth herein are provided to illustrate certain concepts of the disclosure. Those of ordinary skill in the art will comprehend that these are merely illustrative in nature, and other examples may fall within the scope of the disclosure and the appended claims. Based on the teachings herein those skilled in the art should appreciate that an aspect disclosed herein may be implemented independently of any other aspects and that two or more of these aspects may be combined in various ways. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. In addition, such an apparatus may be implemented or such a method may be practiced using other structure, functionality, or structure and functionality in addition to or other than one or more of the aspects set forth herein.

As those skilled in the art will readily appreciate, various aspects described throughout this disclosure may be extended to any suitable telecommunication system, network architecture, and communication standard. By way of example, various aspects may be applied to wide area networks, peer-to-peer network, local area network, other suitable systems, or any combination thereof, including those described by yet-to-be defined standards.

Many aspects are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits, for example, central processing units (CPUs), graphic processing units (GPUs), digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or various other types of general purpose or special purpose processors or circuits, by program instructions being executed by one or more processors, or by a combination of both. Additionally, sequences of actions described herein can be considered to be embodied entirely within any form of computer readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, the various aspects of the disclosure may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the aspects described herein, the corresponding form of any such aspects may be described herein as, for example, “logic configured to” perform the described action.

Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.

Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the disclosure.

One or more of the components, steps, features and/or functions illustrated in above may be rearranged and/or combined into a single component, step, feature or function or embodied in several components, steps, or functions. Additional elements, components, steps, and/or functions may also be added without departing from novel features disclosed herein. The apparatus, devices, and/or components illustrated above may be configured to perform one or more of the methods, features, or steps described herein. The novel algorithms described herein may also be efficiently implemented in software and/or embedded in hardware.

It is to be understood that the specific order or hierarchy of steps in the methods disclosed is an illustration of example processes. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the methods may be rearranged. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented unless specifically recited therein.

The methods, sequences or algorithms described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An example of a storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor.

The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects. Likewise, the term “aspects” does not require that all aspects include the discussed feature, advantage or mode of operation.

The terminology used herein is for the purpose of describing particular aspects only and is not intended to be limiting of the aspects. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes” or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or groups thereof. Moreover, it is understood that the word “or” has the same meaning as the Boolean operator “OR,” that is, it encompasses the possibilities of “either” and “both” and is not limited to “exclusive or” (“XOR”), unless expressly stated otherwise. It is also understood that the symbol “I” between two adjacent words has the same meaning as “or” unless expressly stated otherwise. Moreover, phrases such as “connected to,” “coupled to” or “in communication with” are not limited to direct connections unless expressly stated otherwise.

Any reference to an element herein using a designation such as “first,” “second,” and so forth does not generally limit the quantity or order of those elements. Rather, these designations may be used herein as a convenient method of distinguishing between two or more elements or instances of an element. Thus, a reference to first and second elements does not mean that only two elements may be used there or that the first element must precede the second element in some manner. Also, unless stated otherwise a set of elements may include one or more elements. In addition, terminology of the form “at least one of a, b, or c” or “a, b, c, or any combination thereof” used in the description or the claims means “a orb or c or any combination of these elements.” For example, this terminology may include a, or b, or c, or a and b, or a and c, or a and b and c, or 2a, or 2b, or 2c, or 2a and b, and so on.

As used herein, the term “determining” encompasses a wide variety of actions. For example, “determining” may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining, and the like. Also, “determining” may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), and the like. Also, “determining” may include resolving, selecting, choosing, establishing, and the like.

As used herein, the term receiving may include obtaining (e.g., an integrated circuit chip may obtain information via an interface), receiving an RF signal (e.g., a transceiver or receiver may receive an RF signal via an antenna), or other forms of receiving. In addition, as used herein, the term sending may include outputting or providing (e.g., an integrated circuit chip may output information via an interface), transmitting an RF signal (e.g., a transceiver or transmitter may transmit an RF signal via an antenna), or other forms of sending.

While the foregoing disclosure shows illustrative aspects, it should be noted that various changes and modifications could be made herein without departing from the scope of the appended claims. The functions, steps or actions of the method claims in accordance with aspects described herein need not be performed in any particular order unless expressly stated otherwise. Furthermore, although elements may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. 

What is claimed is:
 1. A method of communication for an apparatus of a first object, comprising, at the apparatus: determining that a second object comprising a second apparatus is within at least a threshold proximity from at least one sensor of the first object and coupled to the apparatus; determining a set of detected objects using, at least in-part, the at least one sensor; determining a subset of the set of detected objects that are presently occluded or are expected to be occluded from sensor detection from the second object; and transmitting a message to the second apparatus, the message comprising information corresponding to at least one detected object of the subset of the set of detected objects.
 2. The method as recited in claim 1, and further comprising, at the apparatus: identifying at least one parameter corresponding to a relative position of the second object with respect to the at least one sensor; and determining the subset of the set of detected objects based at least in part on the at least one parameter.
 3. The method as recited in claim 2, wherein the at least one parameter corresponds to at least one of: a distance measurement between the first object and the second object; a doppler measurement corresponding to motion of the first object, the second object or both; an angular direction measurement from the first object to the second object; a measured direction of travel of the second object; a measured speed of travel of the second object; a measured orientation of the second object; a measured size of the second object; a detected type of the second object; or a detected type of the second apparatus.
 4. The method as recited in claim 1, and further comprising, at the apparatus: for at least one detected object in the set of detected objects, identifying at least one parameter corresponding to a present or expected relative position of the at least one detected object with respect to the second object or the first object; and determining whether the at least one detected object is presently, or is expected to become, occluded from sensor detection from the second object based, at least in part, on the at least one parameter.
 5. The method as recited in claim 1, wherein the message is transmitted proactively rather than in response to a request from the second apparatus.
 6. The method as recited in claim 1, wherein the message is transmitted in a unicast mode of communication supported by at least the first apparatus and the second apparatus.
 7. The method as recited in claim 1, wherein the at least one sensor comprises at least a portion of at least one of: a radar-base sensor; an infra-red (IR)-based sensor, a sonar-based sensor; a LIDAR-based sensor; an image-based sensor; or a wireless communication interface.
 8. The method as recited in claim 1, wherein the first object, the second object, or at least one detected object in the set of detected objects, comprises a vehicle.
 9. The method as recited in claim 1, wherein at least one detected object in the set of detected objects does not comprise a vehicle.
 10. The method as recited in claim 1, wherein the first apparatus, the second apparatus, or both, comprise a user equipment (UE).
 11. An apparatus of a first object, comprising: a transmitter; at least one sensor; a memory device; and a processing circuit coupled to the transmitter, the sensor, and the memory device, wherein the processing circuit is configured to: determine that a second object comprising a second apparatus is within at least a threshold proximity from at least one sensor of the first object and coupled to the apparatus; determine a set of detected objects using, at least in-part, the at least one sensor; determine a subset of the set of detected objects that are presently occluded or are expected to be occluded from sensor detection from the second object; and initiate transmission of a message via the transmitter to the second apparatus, the message comprising information corresponding to at least one detected object of the subset of the set of detected objects.
 12. The apparatus as recited in claim 11, wherein the processing circuit is further configured to: identify at least one parameter corresponding to a relative position of the second object with respect to the at least one sensor; and determine the subset of the set of detected objects based at least in part on the at least one parameter.
 13. The apparatus as recited in claim 12, wherein the at least one parameter corresponds to at least one of: a distance measurement between the first object and the second object; a doppler measurement corresponding to motion of the first object, the second object or both; an angular direction measurement from the first object to the second object; a measured direction of travel of the second object; a measured speed of travel of the second object; a measured orientation of the second object; a measured size of the second object; a detected type of the second object; or a detected type of the second apparatus.
 14. The apparatus as recited in claim 11, wherein the processing circuit is further configured to: for at least one detected object in the set of detected objects, identify at least one parameter corresponding to a present or expected relative position of the at least one detected object with respect to the second object or the first object; and determine whether the at least one detected object is presently, or is expected to become, occluded from sensor detection from the second object based, at least in part, on the at least one parameter.
 15. The apparatus as recited in claim 11, wherein the message is transmitted proactively rather than in response to a request from the second apparatus.
 16. The apparatus as recited in claim 11, wherein the message is transmitted by the transmitter in a unicast mode of communication supported by at least the first apparatus and the second apparatus.
 17. The apparatus as recited in claim 11, wherein the at least one sensor comprises at least a portion of at least one of: a radar-base sensor; an infra-red (IR)-based sensor, a sonar-based sensor; a LIDAR-based sensor; an image-based sensor; or a wireless communication interface.
 18. A method of communication for an apparatus of a first object, comprising, at the apparatus: receiving a message from a second apparatus of a second object, the message comprising sensor information corresponding to at least one detected object that the second apparatus has determined to be presently occluded or is expected to be occluded by the second object from sensor detection by at least one sensor of the first object coupled to the apparatus; and affecting at least one function provided by the apparatus based, at least in part, on the sensor information of the received message.
 19. The method as recited in claim 18, wherein the received message is not in response to a request from the apparatus.
 20. The method as recited in claim 18, wherein the received message is received via a unicast mode of communication supported by at least the apparatus and the second apparatus.
 21. The method as recited in claim 18, wherein the at least one sensor comprises at least a portion of at least one of: a radar-base sensor; an infra-red (IR)-based sensor, a sonar-based sensor; a LIDAR-based sensor; an image-based sensor; or a wireless communication interface.
 22. The method as recited in claim 18, wherein the first object, the second object, or the at least one detected object comprises a vehicle.
 23. The method as recited in claim 18, wherein the apparatus, the second apparatus, or both, comprise a user equipment (UE).
 24. An apparatus of a first object, comprising: a receiver; at least one sensor; a memory device; and a processing circuit coupled to the receiver, the sensor, and the memory device, wherein the processing circuit is configured to: receive a message via the receiver from a second apparatus of a second object, the message comprising sensor information corresponding to at least one detected object that the second apparatus has determined to be presently occluded or is expected to be occluded by the second object from sensor detection by at least one sensor of the first object coupled to the apparatus; and affect at least one function provided by the apparatus based, at least in part, on the sensor information of the received message.
 25. The apparatus as recited in claim 24, wherein the received message does not comprise a response to a request from the apparatus.
 26. The apparatus as recited in claim 24, wherein the received message is received by the receiver via a unicast mode of communication supported by at least the apparatus and the second apparatus.
 27. The apparatus as recited in claim 24, wherein the at least one sensor comprises at least a portion of at least one of: a radar-base sensor; an infra-red (IR)-based sensor, a sonar-based sensor; a LIDAR-based sensor; an image-based sensor; or a wireless communication interface.
 28. The apparatus as recited in claim 24, wherein the first object, the second object, or the at least one detected object comprises a vehicle.
 29. The apparatus as recited in claim 23, wherein at least one detected object does not comprise a vehicle.
 30. The apparatus as recited in claim 24, wherein the apparatus, the second apparatus, or both, comprise a user equipment (UE). 